package com.fenghuajueli.lib_ad;

public class AdConfig {
    /**
     * 广告媒体的id
     */
    private String adAppId = "";
    /**
     * 开屏广告位id
     */
    private String splashId = "";
    /**
     * 插屏广告位id
     */
    private String interactionExpressId = "";
    /**
     * banner广告的广告位id
     */
    private String bannerId = "";
    /**
     * 全屏视频的广告位id
     */
    private String fullScreenVideoId = "";
    /**
     * 激励视频的广告位id
     */
    private String rewardVideoId = "";

    /**
     * banner广告的的宽度 单位dp，根据后台广告位选择的尺寸来进行配置，
     * 不配置则默认为600，但可能会显示有问题
     */
    private float bannerWidth = 600;
    /**
     * banner广告的的高度 单位dp，根据后台广告位选择的尺寸来进行配置，
     * 不配置则默认为90，但可能会显示有问题
     */
    private float bannerHeight = 90;

    /**
     * 插屏广告的的宽度 单位dp，根据后台广告位选择的尺寸来进行配置，
     * 不配置则默认为300
     */
    private float interactionAdWidth = 300;
    /**
     * 插屏广告的的高度 单位dp，根据后台广告位选择的尺寸来进行配置，
     * 不配置则默认为450
     */
    private float interactionAdHeight = 450;

    /**
     * 插屏广告的间隔时间默认为180s 也就是主页重现后，
     * 需要判断和上一次展示广告的时间是否大于了设置的值 是则重新请求广告
     */
    private int interactionIntervalTime = 150;

    /**
     * 在banner被用户手动关闭后，间隔三分钟重新触发banner广告进行展示
     */
    private int bannerIntervalTime = 180;

    /**
     * 开屏广告加载的超时时间 默认为3秒钟,单位为毫秒
     */
    private int splashAdTimeOut = 3000;
    /**
     * 是否启用任何网络下都弹出广告弹窗提醒
     */
    private boolean enablePopDialogWithAd = false;

    public AdConfig(AdShowUtils.AdConfigBuilder adConfigBuilder) {
        this.adAppId = adConfigBuilder.getAdAppId();
        this.splashId = adConfigBuilder.getSplashId();
        this.interactionExpressId = adConfigBuilder.getInteractionExpressId();
        this.bannerId = adConfigBuilder.getBannerId();
        this.fullScreenVideoId = adConfigBuilder.getFullScreenVideoId();
        this.rewardVideoId = adConfigBuilder.getRewardVideoId();
        this.bannerHeight = adConfigBuilder.getBannerHeight();
        this.bannerWidth = adConfigBuilder.getBannerWidth();
        this.interactionAdWidth = adConfigBuilder.getInteractionAdWidth();
        this.interactionAdHeight = adConfigBuilder.getInteractionAdHeight();
        this.interactionIntervalTime = adConfigBuilder.getInteractionIntervalTime();
        this.bannerIntervalTime = adConfigBuilder.getBannerIntervalTime();
        this.splashAdTimeOut = adConfigBuilder.getSplashAdTimeOut();
        this.enablePopDialogWithAd = adConfigBuilder.isEnablePopDialogWithAd();
    }

    public String getAdAppId() {
        return adAppId;
    }

    public String getSplashId() {
        return splashId;
    }

    public String getInteractionExpressId() {
        return interactionExpressId;
    }

    public String getBannerId() {
        return bannerId;
    }

    public String getFullScreenVideoId() {
        return fullScreenVideoId;
    }

    public String getRewardVideoId() {
        return rewardVideoId;
    }

    public float getBannerWidth() {
        return bannerWidth;
    }

    public float getBannerHeight() {
        return bannerHeight;
    }

    public float getInteractionAdWidth() {
        return interactionAdWidth;
    }

    public float getInteractionAdHeight() {
        return interactionAdHeight;
    }

    public int getInteractionIntervalTime() {
        return interactionIntervalTime;
    }

    public int getBannerIntervalTime() {
        return bannerIntervalTime;
    }

    public int getSplashAdTimeOut() {
        return splashAdTimeOut;
    }

    public boolean isEnablePopDialogWithAd() {
        return enablePopDialogWithAd;
    }

}
